Machine-to-machine communications (Machine-to-Machine Communications, M2M) is a network-based application and service focusing on intelligent machine-to-machine interaction. The M2M technology, by embedding a wireless or wired communication module and application processing logic within a machine, implements data communication without manual intervention, so as to meet informatization requirements of users on monitoring, commanding and scheduling, data collection and measurement, and the like. In an M2M system architecture, various M2M terminals (such as a sensor and a microcontroller) access an M2M service platform directly or remotely through an M2M gateway, while various M2M application servers (such as electricity meter reading and intelligent traffic) obtain, with a service capability provided by the M2M service platform, data collected by the M2M terminals, or perform remote control and management for the M2M terminals.
However, in some common M2M services, usually a same service operation needs to be performed for a large quantity of M2M terminals/gateways simultaneously, for example, simultaneously reading electricity meters in all households within an area, or simultaneously controlling power-on and power-off of all lighting and air-conditioning facilities within a building. In this case, group communication becomes especially important because it can prevent an M2M application from repetitively sending a same service operation request to various M2M terminals/gateways and save a lot of communication overheads.
The prior art provides a resource-oriented group communication method. In this method, an M2M application server, an M2M platform, an M2M terminal, an M2M gateway, and all data objects and local applications running on the M2M terminal and M2M gateway are all regarded as a RESTful (Representational State Transfer, representational state transfer) resource, and are uniquely identified by a URI (Universal Resource Identifier, universal resource identifier). By creating a group resource using the foregoing various resources as member resources, a group operation can be implemented for multiple member resources. That is, by creating a group resource, a group operation is implemented for multiple member resources, where the group resource includes information related to the member resources, for example, access paths of the member resources, names of devices having the member resources, and access addresses. For example, if meter reading resources on all target electricity meters (M2M devices) are used as member resources of a group, the M2M application server may send a read request with respect to a group resource to an entity (hereinafter referred to as a group server, which may be any one of an M2M platform, an M2M gateway, and an M2M terminal) maintaining the group resource, and the group server is responsible for forwarding the request to the target electricity meters one by one, and combining reading results into one response message returned to the M2M application server. Therefore, the M2M application server may obtain all member resources (namely, electricity meter reading content) by reading the group resource at a time. A specific communication protocol used by this method may be the HTTP (HyperText Transfer Protocol, HyperText Transfer Protocol) or the CoAP (Constrained Application Protocol, Constrained Application Protocol).
However, the existing method applied to M2M group communication saves only communication between the M2M application server and the group server, but the group server still needs to send a request to each M2M device separately. If the group server has a limited capability (for example, an M2M gateway), or a network between the group server and the M2M device has a relatively small bandwidth or a relatively high communication cost, communication between the group server and the M2M device in the method is not economical.